SQL语言基础(自己总结)


一、sql语言分类
1.数据查询语言(DQL):select
2.数据操纵语言(DML):insert 、update、delete
3.事务控制语言(TCL):commit:用于提交对数据库的更改;
rollback:用于取消对数据库的更改
savepoint:设置保存点
4.数据定义语言(DDL):CREATE、alter、drop
5.数据控制语言(DCL):用于执行权限授予或权限收回。grant、revoke
二、sql编写规则:
1.关键字不区分大小写
2.对象名和列名不区分大小写
3. 字符值区分大小写
三、select用法:
1.select 要查询的列1,要查询的列2...
 into 表名   --将源表的结构和数据插入新表中 
 from 表 | 视图 | 其他查询结果集
     where 条件
 group by 分组条件
     having condition
 order by 排序列
2.简单查询

3.带有表达式的select子句
对于数字数据和日期数据可以进行使用算数表达式。
4.为列指定别名
select 列 as 别名 from 表;--as是可选项,也可以省略
5.显示不重复记录
在列前加distinct
6、比较筛选
a.使用特殊关键字筛选:
like、in、between、isnull
like:字符串匹配或模糊查询
_代表任意一个字符
%代表任意数量的字符

in:用于指定列表 搜索条件 in(val1,val2,。。。valn)
between、isnul略
7.分组查询,略
8.排序查询
order by默认升序,desc为降序。升序为asc
9.多表关联查询
1.表别名:当多个表之间存在同名列,必须使用表名来限制列的引用。
2.内连接:inner join。inner关键字可以省略。只匹配满足查询条件和链接条件的行
select 列名
from 表1 inner join 表2
on 条件;---不用where
3.外连接:不仅返回符合查询条件和链接条件的行,还会返回左表或者右表中符合查询条件的值。
left outer join左外连接
right outer join右外连接
full outer join 完全外连接   --以上三个的outer 可以省略
 四、oracle常用系统函数
1.字符类函数
a)ASCII(c):返回一个字符的asc码
b)CHR(i):返回一个ascii值对应的字符串;
c) concat(s1,s2):将字符串s1连接到字符串s2后面,其中一个字符串为空,则返回另一个。
  d) initcap(s):将字符串s的米格单词的第一个字母大写,其他字母小写;
e)instr(s1,s2[,i][,j]):返回字符串s2在字符串s1中第j次出现的位置,搜索从字符串s1的第i个字符开始。当没有发现要查找的字符串时,返回0;如果i为负数,搜索将从右至左计算。默认值1.
f)length(s):返回字符串s的长度
g)lower(s)、upper(s):大小写转换函数
h)ltrim(s1,s2)、rtrim(s1,s2)、trim(s1,s2):删除字符串s1左、右、两边的s2
i)replace(s1,s2[,s3]):用s3替换所有出现在s1中的s2字符串。
j)substr(s,i,[j]):从字符串s的i位置开始截取长度为j的子字符串,如果j省略,则直接截取到结尾。
五、插入数据(insert语句)
insert into 表名(列名1,列名2...) values(值1,值2...)
1.批量插入:一次向表中插入一组数据:insert into 表 (select ...)将select到的结果插入到表中
六、更新数据(update)
update 表 set 列=值 where 条件;
七、删除数据
delete: delete from 表
where 条件
 truncate:删除表中所有的数据。速度快,无法撤销
truncate 表
八、事务处理
commit,事务提交
rollback,事务回滚
savepoint ,事务保存点,rollback可以回滚到指定的保存点
rollback to savepoint 名;
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值